void GetMask_float(float2 uv, out float2 newUv, out float4 color, out float mask)
{
	int2 size = (int2)_GridSizeGap;

	// uv
	int2 pixel = (int2)(uv * size.x);
	newUv = pixel / _GridSizeGap.x;

	// color
	// gap
	float2 a = (pixel >> size.y & 1) != 0; 
	//float2 a = pixel % _GridSizeGap.y != 0;
	float alpha = a.x * a.y;

	float4 texColor = SAMPLE_TEXTURE2D_X(_EmissionTexture, sampler_EmissionTexture, newUv);
	color = alpha * texColor * _Emission;

	// mask
	//mask = texColor.a * _Emission.r * _Emission.g * _Emission.b * _Emission.a != 0;
	mask = texColor.a * _Emission.a != 0;
}